home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TeX 1995 July
/
TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO
/
systems
/
atari
/
birkhahn-metafont-packed-disks
/
mf27-2_2e-disk2.zoo
/
inputs
/
handy.lzs
/
HANDS.MF
next >
Wrap
Text File
|
1989-11-20
|
2KB
|
92 lines
% hands.mf
mode_setup;
size=48pt#;
font_size size;
em#:=size; cap#:=7/10em#; desc#:=3/10em#;
thinline#:=1/100em#;
define_pixels(em,cap,desc);
define_blacker_pixels(thinline);
%Hand pointing right
def handpointing=
% define points for thumb and cuff
x1=x3=1/2[0,1/15w];
x2=x5=x4=x23=4/16w;
y1=y2=10/15[-desc,cap];
y3=y4=2/15[-desc,cap];
y5=6/7[y4,y2]; y23=1/7[y4,y2];
x6=9.75/16w;
y6=y2;
x7=11.25/16w;
y7=4/5[y23,y5];
x8=8.75/16w;
y8=1/4[y7,y6];
x17=14.5/16w;
y17=9.25/15[-desc,cap];
% find a point at a cerrtain height or
% the curve from z6 to z7
path dummyCurve; path dummyLine;
x.dummy=1/2[x8,x7];
y.dummy=y17;
dummyCurve:=z6{z5-z2}..z7..tension1.4..z8;
dummyLine:=z.dummy--z17;
z18=dummyCurve intersectionpoint dummyLine;
x16=x17;
y16=y7;
x9=7/16w;
y9=y8;
x10=6/16w;
y10=2/5[y23,y5];
% find another point on the
% curve from z6 to z7
x.dummy2=x5;
y.dummy2=y16;
x.dummy3:=1/2[x8,x7];
y.dummy3=y.dummy2;
dummyLine:=z.dummy3--z.dummy2;
z12=dummyCurve intersectionpoint dummyLine;
% define points for curled fingers
x15=x14=x19=x22=1/3[x18,x17];
x13=x20=x21=x12;
y15=y16;
y13=y14=y15-(y17-y16);
y20=y19=y13-(y17-y16);
y21=y22=y20-(y17-y16);
% Pick up pen and draw whole image
pickup pencircle scaled thinline;
draw z1--z2--z4--z3--cycle;
draw z5{(1,1)}..tension 1.5..z6
&z6{z5-z2}...z7..tension 1.4..z8
&z8{down}..tension3..z9
&z9..tension 1.8..{left}z10;
draw z18--z17{right}..z16--z7;
draw z7--z15{right}..z14--z13{left}..z12;
draw z14{right}..z19--z20{left}..z13;
draw z19{right}..z22--z21{left}..z20;
draw z21{(-1,-1)}..tension1.5..z23;
enddef;
beginchar("A",16/15em#,cap#,desc#);
handpointing;
endchar;
beginchar("B",16/15em#,cap#,desc#);
input mirror;
pattern;
handpointing;
endchar;
beginchar("C",16/15em#,cap#,desc#);
input reverse;
pattern;
handpointing;
endchar;
beginchar("D",16/15em#,cap#,desc#);
input rev_mirr;
pattern;
handpointing;
endchar;
end.